О разделе
C# - язык программирования платформы .NET
Исходный код хранится в файлах .cs для C. Там пишется логика приложения. В проекте можно создавать новые файлы, и через внутреннее API платформы будет взаимодействие между ними. Допустим, можно…
Что требуется знать перед началом изучения языка программирования C#
Фундамент для начинающего программиста - что повторить, как работать, чего ожидать.
Справочник по конфигурациям в C#
Справочник-шпаргалка по конфигурациям в C — типы, синтаксис, стандартная библиотека, типовые паттерны. Не заменяет пошаговое обучение. Учебный курс — раздел.
Рекомендации по разработке на C#
Набор советов, правил, принципов и обычаев в разработке на этом языке.
Синтаксис и пунктуация в C#
Кавычки, точки, запятые, скобки и прочие знаки препинания.
Ключевые слова языка C#
Ключевое слово Назначение Пример ------------------------------------ if Условное выполнение блока кода при истинности выражения if (count 0) Process(); else Альтернативное выполнение при ложности…
Встроенные функции и методы C#
Набор функций, которые включены в стандартную библиотеку языка.
Пространства имён в C#
И если глобальные пространства имён применяются для общего и не используются для всего подряд, то в каждом файле добавляются свои, нужные для кода файла пространства - это file-scoped namespaces,…
Управляющие конструкции и логические операторы
манипулировать данными (арифметические, логические, сравнительные операторы).
Условные выражения и ветвления
Самый базовый способ ветвления — оператор if. Он проверяет условие и, если оно истинно (true), выполняет блок кода.
Обработка исключений в C#
Ошибка (error) — это, как правило, системный сбой, который невозможно обработать (например, нехватка памяти). Исключение (exception) — это управляемое отклонение, которое можно предвидеть,…
Иерархия классов исключений в C#
Платформо-зависимые исключения — например, PlatformNotSupportedException используется в кроссплатформенных API, когда функция недоступна на текущей ОС.
Первая программа на C#
Гайд по установке и настройке с написанием первой программы и её запуском.
Простые приложения на C#
Примеры простых и полезных консольных приложений с демонстрацией концепций языка.
Переменные и их области видимости
Где можно использовать переменную — зависит от области видимости (scope).
Типы данных в C#
Типизация, набор правил определения типа данных значений языка.
Стек и куча
В .NET (и в большинстве языков с управляемой памятью) используется две основные области памяти для хранения данных — Стек (stack) - хранит локальные переменные, параметры методов, адреса возврата. Он…
Преобразование типов и система типизации
Типизация — это система правил, по которым язык программирования отслеживает и контролирует типы данных в программе. Она определяет, какие операции можно выполнять с данными, что можно присвоить…
Работа с типами
Основные методы StringBuilder — Append(text) добавляет текст в конец, AppendLine(text) добавляет текст + перевод строки, Insert(index, text) вставляет текст в указанную позицию, Remove(start, length)…
Обработка значения null и nullable-типы
null — это специальное значение, которое означает отсутствие ссылки на объект. Это не число, не пустая строка, не логическое значение, а именно отсутствие значения.
Массивы, списки и диапазоны
Существует и особый инструмент для безопасной работы с памятью - это стековый и управляемый диапазоны.
Анонимные типы и кортежи
Анонимные типы и кортежи — материал энциклопедии Вселенная IT.
Объектно-ориентированное программирование в C#
Класс - это тип ссылочного вида, наследуемый от Система.Object.
Обобщения (generics)
Обобщения (generics) — это механизм языка C, позволяющий определять классы, методы, интерфейсы, делегаты и структуры без указания конкретного типа данных. Вместо этого используется параметр типа,…
Ковариантность, контравариантность, инвариантность
Вариантность Ключевое слово Направление Где используется ------------------------------------------------------------ Ковариантность out Только возвращаемые значения (например, T Get()) IEnumerable,…
Коллекции и структуры данных в C#
Инструменты для хранения, обработки и манипулирования группами объектов.
LINQ - язык интегрированных запросов
LINQ — это встроенная в язык C технология для выполнения запросов к коллекциям данных. Она предоставляет единый и декларативный способ описания операций над последовательностями объектов, независимо…
Справочник по LINQ
LINQ (Language Integrated Query) — это единая модель запросов к данным в C, реализованная через — Синтаксис выражений запросов (from ... where ... select), Методы расширения (Where, Select, GroupBy,…
Итераторы и ключевое слово yield
Ключевое слово yield предоставляет компилятору инструкцию автоматически сгенерировать итератор на основе метода, в котором оно используется. Метод, содержащий yield, называется итераторным методом.…
Сериализация и десериализация объектов
В HTTP-запросах к API, сохранении настроек, обмене данными между микросервисами, кэшировании (например, в Redis) используется сериализация и десериализация.
Служебные классы и утилиты .NET
Установка флага возможна несколькими способами — программно — через статический метод AppContext.SetSwitch(имя_флага, значение), через файл конфигурации приложения (runtimeconfig.json) — в секции…
Делегаты, события и обратные вызовы
Программирование — это не только последовательное выполнение инструкций, но и организация взаимодействия между различными частями программы. Одной из ключевых концепций, обеспечивающих гибкость и…
Методы расширения и вложенные типы
Расширения — это способ добавления новых методов к уже существующим типам без необходимости наследования или модификации исходного кода этих типов. Такой подход особенно полезен, когда у разработчика…
Внедрение зависимостей (Dependency Injection) в C#
Dependency Injection (DI) — это паттерн проектирования, который позволяет внедрять зависимости (сервисы) в классы извне, а не создавать их внутри. Это делает код гибким, тестируемым и поддерживаемым.…
Лямбда-выражения и отложенная инициализация
Делегаты, лямбды и отложенная инициализация находят применение почти в каждом аспекте современной разработки на C.
Регулярные выражения в C#
Регулярные выражения — это мощный инструмент для описания шаблонов текста. Они позволяют задавать правила, по которым можно находить, проверять и извлекать фрагменты строк. В программировании…
Синтаксический сахар и нововведения
В языке C синтаксический сахар развивался особенно активно начиная с версии 6. Каждое новое поколение языка приносит инструменты, которые позволяют писать код, ближе отражающий намерения автора, а не…
Асинхронное программирование, многопоточность и параллелизм
Основные элементы — Task - представляет асинхронную операцию, возвращающую значение, ConfigureAwait(false) – помогает избежать deadlocks в UI-приложениях
Инфраструктура .NET и метаданные сборок
Платформа .NET строится не только на исполняемом коде, но и на богатой внутренней структуре описаний, которая сопровождает каждую сборку. Эта структура называется метаданными. Метаданные — это данные…
Управление ресурсами и профилирование производительности
Управление ресурсами в C — это системный подход к контролю над объектами и внешними сущностями, которые используют память, процессорное время, сетевые соединения, дисковое пространство или другие…
Сетевое взаимодействие в C#
В ранних версиях .NET Framework использовались первые низкоуровневые классы для HTTP-запросов - HttpWebRequest и HttpWebResponse. Сейчас в .NET уже используется - HttpClient, из пространства имён…
Безопасность приложений на C#
Безопасность программного обеспечения — это системная дисциплина, направленная на защиту данных, ресурсов и поведения приложений от несанкционированного доступа, модификации или разрушения. В…
Работа с базами данных и ORM в C#
★ Entity Framework — это ORM-фреймворк, созданный Microsoft. Он позволяет разработчикам работать с базами данных с помощью принципов ООП вместо написания необработанных SQL запросов. Entity Framework…
Веб-разработка и API на C#
На смену монолитным SOA-подходам пришёл микросервисный стиль, в котором доминируют REST и всё чаще — gRPC. Это не просто меньше SOAP — это принципиально иные философии проектирования.
ASP.NET - фреймворк для веб-приложений
Настоящий перелом произошёл с появлением ASP.NET Core (2016). Это не улучшенная версия ASP.NET — это переписанная с нуля платформа, не имеющая прямой зависимости от Система.Web.dll, совместимой с…
Справочник по ASP.NET
Справочник-шпаргалка по ASP.NET — типы, синтаксис, стандартная библиотека, типовые паттерны. Не заменяет пошаговое обучение. Учебный курс — раздел.
Приложение с S3, PostgreSQL и ASP.NET Core Web API
Микросервисная архитектура представляет собой подход к проектированию программных систем, при котором приложение разделяется на набор небольших независимых сервисов.
Популярные библиотеки и пакеты для C#
Выбор библиотеки — это результат анализа требований проекта — объёма данных, требуемой производительности, уровня зрелости кодовой базы, наличия команды с определёнными компетенциями, а также…
Пример реализации бэкенда на C#
В данной главе рассматривается полный цикл реализации бэкенд-логики для сценария показать цену товара. Мы поэтапно пройдём следующие компоненты — Подготовка базы данных и модели данных, Настройка…
Справочник по C#
Примечание — global используется в global — —Система.Int32 для разрешения коллизий имён с помощью глобального пространства имён.
Итоги
C — это современный, строго типизированный, объектно-ориентированный язык программирования, разработанный Microsoft как часть платформы .NET. Он сочетает в себе выразительность, безопасность и…
Чек-лист самопроверки
Итоги и вопросы по теме Чек-лист самопроверки для самопроверки в энциклопедии Вселенная IT.
C# — о разделе
Подборка материалов раздела C в энциклопедии Вселенная IT